package com.dylan.job.executor;

import com.dylan.job.utils.IpUtil;
import com.dylan.job.utils.NetUtil;
import lombok.Data;

@Data
public class JobExecutor {

    /**
     * 执行器ip地址
     */
    private String ip;

    /**
     * 端口
     */
    private Integer port;

    /**
     * 调度中心地址
     */
    private String adminAddress;

    public void start() {
        //启动执行器服务器Netty构建
        initEmbedServer(adminAddress, ip, port);
    }

    private void initEmbedServer(String adminAddress, String ip, int port) {
        //1.填充ip和port 如果没填Ip系统获取，如果没填port 则找一个空闲的端口
        port = port > 0 ? port : NetUtil.findAvailablePort(9999);

        ip = (ip != null && ip.trim().length() > 0) ? ip : IpUtil.getIp();



    }
}
